Separate Compilation for
نویسنده
چکیده
This paper presents the outline of a module system for the Scheme programming language in order to solve several problems commonly encountered with contemporary implementations. These problems include the lack of support for separate compilation and crossmodule type checking as well as the necessity for non-standard language extensions to aid certain compiler optimizations like open compilation and procedure in-lining. Even though Scheme needs to be augmented with concepts like modules, types, and signatures, this will not change the spirit of the language in a major way. Instead it turns out that other recent additions to the language interact smoothly with the proposed module system. It will be emphasized that it is necessary to make a clean distinction between syntactic de nitions and value de nition | re ected by a textual separation of modules and their signatures.
منابع مشابه
Technological Vision in Automotive Industry and Presenting a Model For the Iranian Automotive Industry
This article aims at strategic vision to technology and suggests a strategic planning for this purpose. The main emphasis in this article is on strategic report compilation in the framework of strategic vision and covers issues such as identification of strategic planning dimensions and strategic vision levels, technology priority setting, environment monitoring, focus on costumer needs, method...
متن کاملEfficient Separate Compilation of Object-Oriented Languages⋆
Compilers of object-oriented languages used in industry are mainly based on a separate compilation framework. However, the knowledge of the whole program improves the efficiency of compilation; therefore the most efficient implementation techniques are global. In this paper, we propose a compromise by including three global compilation techniques in a genuine separate compilation framework.
متن کاملThesis Proposal: Data Representations and Polymorphic Languages
Languages that provide polymorphism tend to place restrictions on object representations, separate compilation, and/or performance. For instance, most Ada implementations require that polymorphism be resolved before compilation. Consequently, separate compilation is sacriiced, since eliminating poly-morphism is a cross-module transformation. Some languages, like C++ and Modula-3, restrict the r...
متن کاملHierarchical Modularity and Intermodule Optimization
Separate compilation is an important tool for coping with design complexity in large software projects. When done right it can also be used to create software libraries, thus promoting code reuse. But separate compilation comes in various flavors and has many facets: namespace management, linking, optimization, dependencies. Many programming languages identify modular units with units of compil...
متن کاملType-level module aliases: independent and equal
The richness of ML’s module system theoretically allows one to flexibly structure libraries, without requiring extra features found in other languages, such as namespaces. Nested structures allow one to define hierarchies of modules, and functors provide flexible linking. However, while this may be true from an internal point of view, the module system alone does not account for all aspects of ...
متن کاملIntégration d'optimisations globales en compilation séparée des langages à objets
Mainly used compilers are based on separate compilation, whereas optimizations of object-oriented programs mostly need a complete knowledge of the whole program. This is especially the case for type analysis and late binding implementations. Both approaches have pros and cons. Therefore, this paper proposes an integration of global optimizations in a separate compilation framework. The code gen...
متن کامل